package org.dromara.pe.mapper;

import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.ibatis.annotations.Param;
import org.dromara.common.mybatis.annotation.DataColumn;
import org.dromara.common.mybatis.annotation.DataPermission;
import org.dromara.pe.domain.Achievement;
import org.dromara.pe.domain.TaskReservation;
import org.dromara.pe.domain.vo.AchievementExcelVo;
import org.dromara.pe.domain.vo.AchievementVo;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
import org.dromara.pe.domain.vo.TaskReservationVo;

import java.util.List;

/**
 * 体测成绩管理Mapper接口
 *
 * @author Lion Li
 * @date 2024-09-02
 */
public interface AchievementMapper extends BaseMapperPlus<Achievement, AchievementVo> {
    @DataPermission({
        @DataColumn(key = "deptName", value = "pbtc.dept_id"),
    })
    Page<AchievementVo> selectAchievementList(@Param("page") Page<Achievement> page, @Param(Constants.WRAPPER) Wrapper<Achievement> queryWrapper);
    @DataPermission({
        @DataColumn(key = "deptName", value = "pbtc.dept_id"),
    })
    List<AchievementVo> selectAchievementList(@Param(Constants.WRAPPER) Wrapper<Achievement> queryWrapper);

    @DataPermission({
        @DataColumn(key = "deptName", value = "pbtc.dept_id"),
    })
    List<AchievementExcelVo> selectAchievementExcelListForTask(@Param(Constants.WRAPPER) Wrapper<Achievement> queryWrapper);
    @DataPermission({
        @DataColumn(key = "deptName", value = "pbtc.dept_id"),
    })
    List<AchievementVo> selectAchievementListForExport(@Param(Constants.WRAPPER) Wrapper<Achievement> queryWrapper);
}
